The present invention relates to read channels in storage devices. In particular, the present invention relates to defect detection in read channels.
In data storage devices, data that has been written to a storage medium is read from the medium through a read channel. Ideally, the average amplitude of the read signal remains within an expected range over the entire medium. However, due to defects on the medium, and errors that occurred while the data was being written to the medium, small sections of data read from the medium can have amplitudes that are significantly larger or significantly smaller than the amplitude of the data read from other portions of the medium.
Significant changes in the amplitude of the read signal can create errors in the data decoded from the read signal. Although some of these errors can be corrected by an error correction code module in the read channel, other errors are so large that the error correction code cannot correct them. When the error correction code detects an error but cannot correct it, the storage device typically tries to reread the data.
In storage systems that use a partial response maximum likelihood (PRML) read channel, parameters of the read channel are changed during the retries. In particular, a gain applied in the read channel is modified during the retries in an attempt to reduce the number of errors in the read data. Under the prior art, errors in the data are identified as occurring within a particular sector on the medium by the error correction code. However, the error correction code cannot pinpoint the location of the error within the sector. Because of this, the gain adjustments made to the read channel must be done on a sector wide basis. Such sector wide gain adjustment has not provided as much reduction in data errors as would be desired.
A method and apparatus are provided for reading from a storage medium to form data values. A signal is generated from a sector on the storage medium and a section of that signal is identified as having a change in amplitude. A gain multiplier is activated to multiply that section of the signal by a gain value. The gain multiplier is deactivated at the end of the section so that the remaining portion of the sector signal is not multiplied by the gain value. This results in a defect adjusted signal that is applied to a detector to detect data values.